package com.enjoyor.soa.traffic.rest.tsms.dubbo;

import com.enjoyor.soa.traffic.api.dto.tsms.RouteInfoDto;
import com.enjoyor.soa.traffic.util.pojo.Page;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

public interface IRouteInfoConsumeService {

	/***
	 * 获取线路分页信息；
	 * 
	 * @param page
	 *            分页信息page；
	 * @param routeId
	 *            线路编号；
	 * @param routeName
	 *            线路名称；
	 * @param taskId
	 *            任务编号；
	 * @param routeStartPlace
	 *            起始位置；
	 * @param routeTargetPlace
	 *            终止位置；
	 * @param routeTypeId
	 *            线路类型编号；
	 * @return zyh
	 */
	public ResultPojo getRouteInfoPage(Page page, String routeId, String routeName, String taskId,
			String routeStartPlace, String routeTargetPlace, String routeTypeId);

	/***
	 * 获取线路List集合；
	 * 
	 * @param routeId
	 *            线路编号；
	 * @param routeName
	 *            线路名称；
	 * @param taskId
	 *            任务编号；
	 * @param routeStartPlace
	 *            线路起始位置；
	 * @param routeTargetPlace
	 *            线路终止位置；
	 * @param routeTypeId
	 *            线路类型编号；
	 * @return zyh
	 */
	public ResultPojo getRouteInfoList(String routeId, String routeName, String taskId, String routeStartPlace,
			String routeTargetPlace, String routeTypeId);

	/***
	 * 添加线路信息；
	 * 
	 * @param routeInfoDto
	 *            线路对象；
	 * @param personName
	 *            操作人；
	 * @return zyh
	 */
	public ResultPojo insertRouteInfo(RouteInfoDto routeInfoDto, String personName);

	/***
	 * 修改线路信息；
	 * 
	 * @param routeInfoDto
	 *            线路对象信息；
	 * @param personName
	 *            操作人
	 * @return zyh
	 */
	public ResultPojo editRouteInfo(RouteInfoDto routeInfoDto, String personName);

	/***
	 * 删除线路信息；
	 * 
	 * @param routeId
	 *            线路编号；
	 * @param personName
	 *            操作人
	 * @return zyh、
	 */
	public ResultPojo deleteRouteInfo(String routeId, String personName);

	/***
	 * 线路切换；
	 * 
	 * @param taskId
	 *            任务编号；
	 * @param routeId
	 *            线路编号；
	 * @param personName
	 *            操作人；
	 * @return zyh；
	 */
	public ResultPojo changeRouteType(String taskId, String routeId, String personName);

	/***
	 * 方案执行进度；
	 * 
	 * @param ececuteDate
	 *            执行之间；
	 * @param taskName
	 *            任务名称；
	 * @param BeforeLicense
	 *            前导车牌；
	 * @param schemeId
	 *            方案编号；
	 * @return zyh
	 */
	public ResultPojo getRouteProcress(String executeDate, String taskName, String beforeLicensePlate, String schemeId);
}
